<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:p="http://primefaces.org/ui"    
      xmlns:f="http://java.sun.com/jsf/core">

    <body>
        <ui:composition template="./../MasterPage/masterPage.xhtml">
            <ui:define name="content">

                
                <p:panel header="Mantenedor de Buses">
                    <h:form id="frmfieldset" enctype="multipart/form-data">

                        <p:growl id="grow2" showDetail="true"/>
                        <p:growl id="mensajeando" showDetail="true"/>
                        <h:panelGrid id="nuevo" columns="1" width="100%" >                
                            <p:fieldset legend="Nuevo Bus" toggleable="true" collapsed="true" toggleSpeed="500">  
                                <p:ajax event="toggle"  update="grow2" />                 
                                <h:panelGrid columns="2" cellpadding="10">
                                        <h:panelGrid columns="2" >
                                            <h:outputText value="N° TV's Primer Piso"/> 
                                            <p:inputText  style="width: 35px;" required="true" requiredMessage="Ingrese el n° TV"  label="TV1Piso" id="txttvs1" value="#{managedBeanBus.objtetoBusCrear.busNroTV1}"/>                        

                                        </h:panelGrid>

                                        <h:panelGrid columns="2" >

                                            <h:outputText value="N° TV's Segundo Piso"/> 
                                            <p:inputText style="width: 35px;" required="true" requiredMessage="Ingrese el n° TV"  label="TV2Piso" id="txttvs2" value="#{managedBeanBus.objtetoBusCrear.busNroTV1}"/>                        

                                        </h:panelGrid>


                                        <h:panelGrid columns="2" >
                                            <h:outputText value="AÑO DE FABRICACION"/> 
                                            <p:inputText style="width: 45px;" required="true" requiredMessage="Ingrese año de fabricacion"   id="txtaniofab" value="#{managedBeanBus.objtetoBusCrear.busAnioFabricacion}"/>                        

                                        </h:panelGrid>

                                        <h:panelGrid columns="2" >
                                            <h:outputText value="CAPACIDAD BODEGA (KG)"/> 
                                            <p:inputText style="width: 45px;" required="true" requiredMessage="Ingrese capacidad de bodega"   id="txttcapbodega" value="#{managedBeanBus.objtetoBusCrear.busCapacidaBodega}"/>                        

                                        </h:panelGrid>

                                        <h:outputText value="DISEÑO BUS"/> 
                                        <p:selectOneMenu value="#{managedBeanBus.objetoDisenio}" effect="drop" style="width:250px" converter="DisenioConverter" >
                                            <f:selectItems  id="itemsDisenio" value="#{managedBeanDisenio.objetoItems}"/>
                                        </p:selectOneMenu>
                                        <h:panelGrid columns="1" width="10%">
                                            <h:outputText value="IMAGEN BUS"/> 


                                            <p:fileUpload fileUploadListener="#{managedBeanBus.handleFileUpload}"
                                                          mode="advanced" 
                                                          update=":frmfieldset:mensajeando :frmfieldset:imagen_"
                                                          auto="true"  
                                                          sizeLimit="1000000" 
                                                          allowTypes="/(\.|\/)(gif|jpe?g|png)$/"
                                                          label="SELECCIONAR"

                                                          />

                                        </h:panelGrid>
                                        <p:graphicImage id="imagen_" height="150px;" width="150px;" value="#{managedBeanBus.ruta}" />


                                        <h:outputText value="N° ASIENTOS PRIMER PISO"/> 
                                        <p:inputText style="width: 120px;" required="true" requiredMessage="Ingrese n° asientos 1°piso" value="#{managedBeanBus.objtetoBusCrear.busNroAsientos1}"/>                        

                                        <h:outputText value="N° ASIENTOS SEGUNDO PISO"/> 
                                        <p:inputText style="width: 120px;" required="true" requiredMessage="Ingrese n° asientos 2°piso"  value="#{managedBeanBus.objtetoBusCrear.busNroAsientos2}"/>                        


                                        <h:outputText value="N° AUTORIZACION DE TRANSPORTE"/> 
                                        <p:inputText style="width: 120px;" required="true" requiredMessage="Ingrese n° de autorizacion"  value="#{managedBeanBus.objtetoBusCrear.busNroAutorizacionTransp}"/>                        
                                        <h:outputText value="N° DE EJES"/> 
                                        <p:inputText style="width: 80px;" required="true" requiredMessage="Ingrese n° de ejes"  value="#{managedBeanBus.objtetoBusCrear.busNroEjes}"/>                        

                                        <h:outputText value="N° DE GALONES"/> 
                                        <p:inputText style="width: 80px;" required="true" requiredMessage="Ingrese n° de galones"  value="#{managedBeanBus.objtetoBusCrear.busGlnsCombustible}"/>                        

                                        <h:outputText value="FECHA INICIO FUNCIONAMIENTO:"/> 
                                        <p:calendar required="true" style="width: 100px;"  value="#{managedBeanBus.objtetoBusCrear.busFechaUso}" pattern="dd/MM/yyyy"/>                        


                                        <h:outputText value="N° DE PISOS"/> 
                                        <p:inputText style="width: 80px;" required="true" requiredMessage="Ingrese n° pisos"  value="#{managedBeanBus.objtetoBusCrear.busNroPisos}"/>                        

                                        <h:outputText value="PLACA RODAJE"/> 
                                        <p:inputText style="width: 80px;" required="true" requiredMessage="Ingrese placa de rodaje"  value="#{managedBeanBus.objtetoBusCrear.busPlacaRodaje}"/>                        


                                        <h:outputText value="SSHH." />
                                        <p:selectOneRadio id="options" value="#{managedBeanBus.objtetoBusCrear.busSSHH}">
                                            <f:selectItem itemLabel="SI" itemValue="true" />
                                            <f:selectItem itemLabel="NO" itemValue="false" />

                                        </p:selectOneRadio>
                                        <h:outputText value="MARCA"/> 
                                        <p:selectOneMenu value="#{managedBeanBus.objetoMarca}" effect="drop" style="width:425px" converter="MarcaConverter" >
                                            <f:selectItems  id="tems" value="#{managedBeanMarca.objetoItems}"/>
                                        </p:selectOneMenu>   

                                        <h:outputText value="MODELO"/> 
                                        <p:selectOneMenu value="#{managedBeanBus.objetoModelo}" effect="drop" style="width:425px" converter="ModeloConverter" >
                                            <f:selectItems  id="tems2" value="#{managedBeanModelo.objetoItems}"/>
                                        </p:selectOneMenu>   

                                        <h:outputText value="TIPO COMBUSTIBLE"/> 
                                        <p:selectOneMenu value="#{managedBeanBus.objetoTipoCombustible}" effect="drop" style="width:425px" converter="TipoCombustibleConverter" >
                                            <f:selectItems  id="tems3" value="#{managedBeanTipoCombustible.objetoItems}"/>
                                        </p:selectOneMenu>   

                                        <h:outputText value="OBSERVACIONES:"/> 
                                        <p:inputTextarea id="txtDescripcion" rows="3" cols="45" value="#{managedBeanBus.objtetoBusCrear.busObservaciones}"/>                                              
                                        <p:commandButton icon="ui-icon-disk"  value="Insertar" action="#{managedBeanBus.insertar()}" update=":frmfieldset:grow2 :frmNuevo:dataTable :frmfieldset" />                        
                                </h:panelGrid>
                            </p:fieldset>
                        </h:panelGrid>
                    </h:form>
                    <br/>
                    <h:form id="frmNuevo" enctype="multipart/form-data">
                        <p:growl id="growl" showDetail="true"/>
                        <p:growl id="messages" />            
                        <h:panelGrid id="padre" columns="1" style="width: 100%">
                            <h:panelGrid id="hijo2" columns="1" style="width: 100%">
                                <p:dataTable id="dataTable" var="item" value="#{managedBeanBus.lista}" widgetVar="CargoTable" emptyMessage="Datos no encontrados"
                                             selection="#{managedBeanBus.objtetoBus}" selectionMode="single"
                                             rowKey="#{item.idbus}" paginator="true" rows="7"
                                             rowsPerPageTemplate="5,10,20,50">
                                    <p:ajax event="rowSelect" listener="#{managedBeanBus.onRowSelect}"
                                            update=":frmNuevo:display :frmNuevo:growl" oncomplete="CargoDialogo.show()" />
                                    <p:ajax event="rowUnselect" listener="#{managedBeanBus.onRowUnselect}" update=":frmNuevo:growl"/>
                                    <f:facet name="header">  
                                        <p:outputPanel>  
                                            <h:outputText value="Listado de Buses" />    
                                        </p:outputPanel>  
                                    </f:facet>

                                    <p:column id="nombre" filterMatchMode="contains" filterBy="#{item.marca.marMarca}" style="text-align: center" > 
                                        <f:facet name="header">
                                            <h:outputText value="MARCA" />
                                        </f:facet>
                                        <h:outputText value="#{item.marca.marMarca}" />  
                                    </p:column>  
                                    <p:column id="descripcion" filterMatchMode="contains" filterBy="#{item.modelo.modModelo}" style="text-align: center" > 
                                        <f:facet name="header">
                                            <h:outputText value="MODELO" />
                                        </f:facet>
                                        <h:outputText value="#{item.modelo.modModelo}" />  
                                    </p:column>  

                                    <p:column  filterMatchMode="contains" filterBy="#{item.busAnioFabricacion}" style="text-align: center" > 
                                        <f:facet name="header">
                                            <h:outputText value="AÑO" />
                                        </f:facet>
                                        <h:outputText value="#{item.busAnioFabricacion}" />  
                                    </p:column>


                                    <p:column id="pisos" filterMatchMode="contains" filterBy="#{item.busNroPisos}" style="text-align: center" > 
                                        <f:facet name="header">
                                            <h:outputText value="PISOS" />
                                        </f:facet>
                                        <h:outputText value="#{item.busNroPisos}" />  
                                    </p:column>

                                </p:dataTable> 
                            </h:panelGrid>
                        </h:panelGrid>        
                        <p:dialog modal="true" id="dialog" header="Editar Bus" widgetVar="CargoDialogo" resizable="false" 
                                  showEffect="explode" hideEffect="explode" height="450" style="width: 100%" >
                            <h:panelGrid id="display" columns="2" cellpadding="4" style="width: 100%">


                                <h:panelGrid columns="2" >
                                    <h:outputText value="N° TV's Primer Piso"/> 
                                    <p:inputText  style="width: 35px;" required="true"  label="TV1Piso"  value="#{managedBeanBus.objtetoBus.busNroTV1}"/>                        

                                </h:panelGrid>

                                <h:panelGrid columns="2" >

                                    <h:outputText value="N° TV's Segundo Piso"/> 
                                    <p:inputText style="width: 35px;" required="true"  label="TV2Piso" value="#{managedBeanBus.objtetoBus.busNroTV1}"/>                        

                                </h:panelGrid>


                                <h:panelGrid columns="2" >
                                    <h:outputText value="AÑO DE FABRICACION"/> 
                                    <p:inputText style="width: 45px;" required="true"    value="#{managedBeanBus.objtetoBus.busAnioFabricacion}"/>                        

                                </h:panelGrid>

                                <h:panelGrid columns="2" >
                                    <h:outputText value="CAPACIDAD BODEGA (KG)"/> 
                                    <p:inputText style="width: 45px;" required="true"    value="#{managedBeanBus.objtetoBus.busCapacidaBodega}"/>                        

                                </h:panelGrid>
                                <h:outputText value="DISEÑO BUS"/> 
                                <p:selectOneMenu value="#{managedBeanBus.objtetoBus.disenio}" effect="drop" style="width:250px" converter="DisenioConverter" >
                                    <f:selectItems  id="itemsDisenio" value="#{managedBeanDisenio.objetoItems}"/>
                                </p:selectOneMenu>


                                <h:panelGrid columns="1" width="10%">
                                    <h:outputText value="IMAGEN BUS"/> 


                                    <p:fileUpload fileUploadListener="#{managedBeanBus.handleFileUploadEditar}"
                                                  mode="advanced" 
                                                  update=":frmNuevo:messages :frmNuevo:imagen_Editar"
                                                  auto="true"  
                                                  sizeLimit="1000000" 
                                                  allowTypes="/(\.|\/)(gif|jpe?g|png)$/"
                                                  label="SELECCIONAR"

                                                  />

                                </h:panelGrid>
                                 
                                <p:graphicImage id="imagen_Editar" height="150px;" width="150px;" value="#{managedBeanBus.rutaeditar}" />

                                
                                <h:outputText value="N° ASIENTOS PRIMER PISO"/> 
                                    <p:inputText style="width: 120px;" required="true"   value="#{managedBeanBus.objtetoBus.busNroAsientos1}"/>                        

                                    <h:outputText value="N° ASIENTOS SEGUNDO PISO"/> 
                                    <p:inputText style="width: 120px;" required="true"   value="#{managedBeanBus.objtetoBus.busNroAsientos2}"/>                        


                                    <h:outputText value="N° AUTORIZACION DE TRANSPORTE"/> 
                                    <p:inputText style="width: 120px;" required="true"   value="#{managedBeanBus.objtetoBus.busNroAutorizacionTransp}"/>                        
                                    <h:outputText value="N° DE EJES"/> 
                                    <p:inputText style="width: 80px;" required="true"   value="#{managedBeanBus.objtetoBus.busNroEjes}"/>                        

                                    <h:outputText value="N° DE GALONES"/> 
                                    <p:inputText style="width: 80px;" required="true"   value="#{managedBeanBus.objtetoBus.busGlnsCombustible}"/>                        

                                    <h:outputText value="FECHA INICIO FUNCIONAMIENTO:"/> 
                                    <p:calendar required="true"   value="#{managedBeanBus.objtetoBus.busFechaUso}" pattern="dd/MM/yyyy"/>                        


                                    <h:outputText value="N° DE PISOS"/> 
                                    <p:inputText style="width: 80px;" required="true"   value="#{managedBeanBus.objtetoBus.busNroPisos}"/>                        

                                    <h:outputText value="PLACA RODAJE"/> 
                                    <p:inputText style="width: 80px;" required="true"   value="#{managedBeanBus.objtetoBus.busPlacaRodaje}"/>                        


                                    <h:outputText value="SSHH." />
                                    <p:selectOneRadio id="options" value="#{managedBeanBus.objtetoBus.busSSHH}">
                                        <f:selectItem itemLabel="SI" itemValue="true" />
                                        <f:selectItem itemLabel="NO" itemValue="false" />

                                    </p:selectOneRadio>
                                    <h:outputText value="MARCA"/> 
                                    <p:selectOneMenu value="#{managedBeanBus.objtetoBus.marca}" effect="drop" style="width:425px" converter="MarcaConverter" >
                                        <f:selectItems  id="tems" value="#{managedBeanMarca.objetoItems}"/>
                                    </p:selectOneMenu>   

                                    <h:outputText value="MODELO"/> 
                                    <p:selectOneMenu value="#{managedBeanBus.objtetoBus.modelo}" effect="drop" style="width:425px" converter="ModeloConverter" >
                                        <f:selectItems  id="tems2" value="#{managedBeanModelo.objetoItems}"/>
                                    </p:selectOneMenu>   

                                    <h:outputText value="TIPO COMBUSTIBLE"/> 
                                    <p:selectOneMenu value="#{managedBeanBus.objtetoBus.tipocombustible}" effect="drop" style="width:425px" converter="TipoCombustibleConverter" >
                                        <f:selectItems  id="tems3" value="#{managedBeanTipoCombustible.objetoItems}"/>
                                    </p:selectOneMenu>  
                                    <h:outputText value="OBSERVACIONES:"/> 
                                    <p:inputTextarea  required="true"  id="txtDescripcion" rows="3" cols="45" value="#{managedBeanBus.objtetoBus.busObservaciones}"/>                        
                                    
                            </h:panelGrid>
                            <p:commandButton icon="ui-icon-arrowrefresh-1-w" value="Actualizar" action="#{managedBeanBus.editar}" update=":frmNuevo:display" />                            
                            <p:commandButton value="Eliminar" title="Eliminar" alt="Eliminar" icon="ui-icon-close"  action="#{managedBeanBus.eliminar}" update=":frmNuevo" />

                        </p:dialog>
                        <p:outputPanel id="panel1" autoUpdate="true" style="text-align: center">
                            <center>
                                <h:panelGrid columns="2" cellpadding="10">
                                    <p:fieldset legend="Exportar Todo: Seleccione el tipo de Formato" toggleSpeed="500"> 
                                        <center>
                                            <h:panelGrid columns="2" cellpadding="10">
                                                <h:commandLink>
                                                    <p:graphicImage style="width: 40px; height: 48px" value="/images/excel.png" />
                                                    <p:dataExporter type="xls" target="dataTable" fileName="lista" />
                                                </h:commandLink>
                                                <h:commandLink>
                                                    <p:graphicImage style="width: 50px; height: 48px" value="/images/pdf.jpg" />
                                                    <p:dataExporter type="pdf" target="dataTable" fileName="lista"/>
                                                </h:commandLink>
                                            </h:panelGrid>
                                        </center>
                                    </p:fieldset>
                                    <h:panelGrid columns="2" cellpadding="10" >                             
                                        <p:fieldset legend="Exportar por Paginado: Seleccione el tipo de Formato" toggleSpeed="500"> 
                                            <center>
                                                <h:panelGrid columns="2" cellpadding="10">
                                                    <h:commandLink>
                                                        <p:graphicImage style="width: 40px; height: 48px" value="/images/excel.png" />
                                                        <p:dataExporter type="xls" target="dataTable" fileName="lista" pageOnly="true"/>
                                                    </h:commandLink>
                                                    <h:commandLink>
                                                        <p:graphicImage style="width: 50px; height: 48px" value="/images/pdf.jpg" />
                                                        <p:dataExporter type="pdf" target="dataTable" fileName="lista" pageOnly="true"/>
                                                    </h:commandLink>
                                                </h:panelGrid>
                                            </center>
                                        </p:fieldset>
                                    </h:panelGrid>
                                </h:panelGrid>
                            </center>
                        </p:outputPanel>
                    </h:form>
                </p:panel>

            </ui:define>
        </ui:composition>
    </body>
</html>

